package com.woniuxy.patrol.mapper;

import com.woniuxy.patrol.pojo.PatrolTask;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Param;

import java.time.LocalDate;
import java.util.List;

/**
* @author 13162
* @description 针对表【wcm_patrol_task(巡更任务表)】的数据库操作Mapper
* @createDate 2025-07-18 17:19:00
* @Entity com.woniuxy.patrol.pojo.PatrolTask
*/
public interface PatrolTaskMapper extends BaseMapper<PatrolTask> {

    // 根据日期和状态查询任务
    List<PatrolTask> selectByDateAndStatus(
            @Param("taskDate") LocalDate taskDate,
            @Param("status") Integer status);

    // 根据XXL-JOB ID查询任务
    PatrolTask selectByXxlJobId(Integer xxlJobId);

    // 按日期、状态、社区筛选任务
    List<PatrolTask> selectByCondition(
            @Param("date") LocalDate date,
            @Param("status") Integer status,
            @Param("communityId") Long communityId,  // 与XML中的#{communityId}对应
            @Param("keyword") String keyword,
            @Param("offset") Integer offset,
            @Param("pageSize") Integer pageSize
    );

    // 统计符合条件的总数
    long countByCondition(@Param("date") LocalDate date,
                          @Param("status") Integer status,
                          @Param("communityId") Long communityId,
                          @Param("keyword") String keyword);
}




